# coding:utf-8
# 先导包
from lxml import etree

text = ''' <div> <ul> 
        <li class="item-1"><a href="link1.html">first item</a></li> 
        <li class="item-1"><a href="link2.html">second item</a></li> 
        <li class="item-inactive"><a href="link3.html">third item</a></li> 
        <li class="item-1"><a href="link4.html">fourth item</a></li> 
        <li class="item-0"><a href="link5.html">fifth item</a> 
        </ul> </div> '''

# 先获取etree.HTML对象  传入str类型
html = etree.HTML(text)
# 获取有 class='item-1'属性 的li标签下的 a标签下的href属性值  返回列表  里面是说所有匹配到的数据
href_list = html.xpath("//li[@class='item-1']/a/@href")
# 获取有 class='item-1'属性 的li标签下的 a标签下的文本内容   返回列表  里面是说所有匹配到的数据
title_list = html.xpath("//li[@class='item-1']/a/text()")
# 组装成字典
for href in href_list:
    item = dict()
    item["href"] = href
    item["title"] = title_list[href_list.index(href)]
    print(item)

# 只获取到a标签 没有获得具体的数据  返回的是eree.HTML对象
html_li_list = html.xpath('//li[@class="item-1"]/a')
print(html_li_list)
# [<Element a at 0x24cb809a3c0>, <Element a at 0x24cb809a2c0>, <Element a at 0x24cb809a400>]
